redis shell

redis-cli

  • redis-cli -r (repeat)表示命令执行多次,
xxx@ubuntu:~$ redis-cli -r 3 ping
PONG
PONG
PONG
  • -i (interval)表示每隔几秒执行一次命令,-i和-r选项必须一起使用,-i 的单位是秒,不支持毫秒,可以使用小数表示毫秒,-i0.001表示10毫秒。
xxx@ubuntu:~$ redis-cli -r 5 -i 1 ping
PONG
PONG
PONG
PONG
PONG
  • -x 选项代表从标准输入读取数据作为redis-cli的最后一个参数,
xxx@ubuntu:~$ echo "world" | redis-cli -x set hello
OK
xxx@ubuntu:~$ redis-cli get hello
"world\n"
xxx@ubuntu:~$ 
  • -c (cluster) 选项是连接Redis Cluster节点时需要使用的。
  • -a (auth)有了这个选项就不需要手动输入auth命令。
  • --slave 把当前客户端模拟成当前redis节点的从节点。
xxx@ubuntu:~$ redis-cli  --slave // 开启一个客户端
SYNC with master, discarding 555 bytes of bulk transfer...
SYNC done. Logging commands from master.
xxx@ubuntu:~$ redis-cli set name ziyan // 另外一个客户端做更新操作
OK
xxx@ubuntu:~$ redis-cli set age 26
OK
xxx@ubuntu:~$ 
xxx@ubuntu:~$ redis-cli  --slave  // 第一个客户端会收到更新操作
SYNC with master, discarding 555 bytes of bulk transfer...
SYNC done. Logging commands from master.
"PING"
"PING"
"PING"
"PING"
"PING"
"SELECT","0"
"set","name","ziyan"
"PING"
"set","age","26"
  • --rdb 选项会请求redis实例生成并发送rdb持久化文件,保存在本地。

  • --pipe 选用用于将命令封装成Redis通信协议定义的数据格式,批量发送给redis。

  • --stat 选项可以实时获取Redis的重要统计信息

 redis-cli --stat
------- data ------ --------------------- load -------------------- - child -
keys       mem      clients blocked requests            connections          
15         798.28K  1       0       67 (+0)             15          
15         798.28K  1       0       68 (+1)             15          
15         798.28K  1       0       69 (+1)             15          
15         798.28K  1       0       70 (+1)             15          
15         798.28K  1       0       71 (+1)             15  

redis-server

      redis-server 除了启动redis之外,--test-memory : 用来检测当前操作系统能否稳定地分配指定容量的内存给redis,整个内存检测的时间比较长,当输出passed this test说明内存检测完毕。

redis-server --test-memory 1024

redis-benchmark

  • -c (client)选项代表客户端的并发数量(默认50)。
  • -n (num) 选项代表客户端请求总量。(默认100000)
redis-benchmark -c 100 -n200000 // 代表100个客户端同时请求redis,一共执行200000次。

      redis-benchmark会对各类数据结构的命令进行测试,并给出性能指标。如下所示,一共执行了2000次lpush操作,在0.06s完成,每个数据的请求量是3个字节,99.7%的命令执行时间小于1毫秒,Redis每秒可以处理30769.23次lpush请求。

 redis-benchmark -c 10 -n 2000

====== LPUSH ======
  2000 requests completed in 0.06 seconds
  10 parallel clients
  3 bytes payload
  keep alive: 1

97.70% <= 1 milliseconds
99.70% <= 2 milliseconds
100.00% <= 2 milliseconds
30769.23 requests per second

====== LRANGE_600 (first 600 elements) ======
  2000 requests completed in 0.25 seconds
  10 parallel clients
  3 bytes payload
  keep alive: 1

91.20% <= 1 milliseconds
100.00% <= 1 milliseconds
7968.13 requests per second
  • -q 选项仅仅显示redis-benchmark的request per second信息。

xxx@ubuntu:~$ redis-benchmark -c 50 -n 20000 -q
PING_INLINE: 56497.18 requests per second
PING_BULK: 56338.03 requests per second
SET: 49627.79 requests per second
GET: 52910.05 requests per second
INCR: 56179.77 requests per second
LPUSH: 56179.77 requests per second
LPOP: 40733.20 requests per second
SADD: 51679.59 requests per second
SPOP: 50505.05 requests per second
LPUSH (needed to benchmark LRANGE): 37735.85 requests per second
LRANGE_100 (first 100 elements): 19607.84 requests per second
LRANGE_300 (first 300 elements): 9896.09 requests per second
LRANGE_500 (first 450 elements): 8285.00 requests per second
LRANGE_600 (first 600 elements): 6191.95 requests per second
MSET (10 keys): 31446.54 requests per second
  • -r (random) 在一个空的redis上执行了redis-bench mark会发现只有3个键,如果想向redis插入更多的键,使用-r选项,-r1000代表只对后四位做随机处理。
127.0.0.1:6379> dbsize
(integer) 3
127.0.0.1:6379> keys *
1) "counter:__rand_int__"
2) "mylist"
3) "key:__rand_int__"
127.0.0.1:6379> 
 redis-benchmark -c 50 -n 20000 -q -r 1000

127.0.0.1:6379> dbsize
(integer) 2001
127.0.0.1:6379> scan 0
1) "1792"
2)  1) "counter:000000000431"
    2) "key:000000000766"
    3) "key:000000000644"
    4) "key:000000000257"
    5) "key:000000000174"
    6) "key:000000000497"
    7) "counter:000000000861"
    8) "counter:000000000443"
    9) "counter:000000000827"
   10) "counter:000000000285"
  • -t 选项可以对指定命令进行基准测试
 redis-benchmark -t get,set -q  
SET: 57372.34 requests per second
GET: 51203.28 requests per second
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,835评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,598评论 1 295
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,569评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,159评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,533评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,710评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,923评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,674评论 0 203
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,421评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,622评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,115评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,428评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,114评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,097评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,875评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,753评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,649评论 2 271

推荐阅读更多精彩内容

  • Redis 提供了 redis-cli、redis-server、redis-benchmark 等 Shell ...
    扎啤阅读 575评论 0 0
  • 超强、超详细Redis入门教程 转载2017年03月04日 16:20:02 16916 转载自: http://...
    邵云涛阅读 17,323评论 3 313
  • 本文是我自己在秋招复习时的读书笔记,整理的知识点,也是为了防止忘记,尊重劳动成果,转载注明出处哦!如果你也喜欢,那...
    波波波先森阅读 3,409评论 0 40
  • 文章已经放到github上 ,如果对您有帮助 请给个star[https://github.com/qqxuanl...
    尼尔君阅读 2,230评论 0 22
  • 【本教程目录】 1.redis是什么2.redis的作者3.谁在使用redis4.学会安装redis5.学会启动r...
    徐猿猿阅读 1,857评论 0 35